/* ==============================================
   全局样式设置
   ============================================== */
.root {
    -fx-font-family: "Segoe UI", "Microsoft YaHei", "SimHei", sans-serif;
    -fx-font-size: 14px;
    -fx-background-color: #ffffff;
    -fx-text-fill: #333333;
}

/* ==============================================
   顶部面板样式
   ============================================== */
.top-panel {
    -fx-background-color: #f0f2f5;
    -fx-border-color: #e0e0e0;
    -fx-border-width: 0 0 1px 0;
    -fx-padding: 12px 15px;
}

/* 搜索输入框 */
.search-field {
    -fx-pref-height: 38px;
    -fx-border-radius: 6px;
    -fx-background-radius: 6px;
    -fx-border-color: #d0d7dc;
    -fx-padding: 0 12px;
    -fx-background-color: white;
    -fx-effect: dropshadow(gaussian, rgba(0,0,0,0.05), 2, 0, 0, 1);
}

.search-field:focused {
    -fx-border-color: #69b1ff;
    -fx-effect: dropshadow(gaussian, rgba(59,130,246,0.2), 4, 0, 0, 2);
    -fx-border-width: 1.5px;
}

.search-field:hover {
    -fx-border-color: #b1b9c6;
}

/* 按钮样式 */
.action-button {
    -fx-pref-height: 35px;
    -fx-border-radius: 6px;
    -fx-background-radius: 6px;
    -fx-font-weight: 500;
    -fx-padding: 0 16px;
    -fx-cursor: hand;
    -fx-transition: all 0.2s ease;
}

.search-button {
    -fx-background-color: #3b82f6;
    -fx-text-fill: white;
    -fx-border-color: #3b82f6;
}

.search-button:hover {
    -fx-background-color: #2563eb;
    -fx-border-color: #2563eb;
    -fx-effect: dropshadow(gaussian, rgba(59,130,246,0.2), 4, 0, 0, 2);
}

/* ==============================================
   文件类型标签页容器
   ============================================== */
/* 保持原有样式，仅调整文本方向为横向 */
.file-type-tabs {
    -fx-background-color: white;
    -fx-border-color: #e0e0e0;
    -fx-border-width: 0;
    -fx-padding: 0;
    -fx-background-insets: 0;
    -fx-effect: none; /* 移除默认阴影，保持简洁 */
}

/* 标签页标题区域容器 */
.file-type-tabs .tab-header-area {
    -fx-padding: 8px 16px 0 16px; /* 增加左右边距，让标签不贴边 */
    -fx-background-color: #f0f2f5; /* 与表格表头背景一致 */
    -fx-border-color: #e0e0e0;
    -fx-border-width: 0; /* 底部边框与表格对齐 */
    -fx-background-insets: 0;
}

/* 标签页标题区域的滚动条容器 */
.file-type-tabs .tab-header-area .headers-region {
    -fx-padding: 0;
}

/* Tab 基础样式 - 增加文本横向显示相关设置 */
.file-type-tabs .tab {
    -fx-background-color: transparent;
    -fx-background-insets: 0 1px 0 1px; /* 标签之间微小间隔 */
    -fx-background-radius: 6px 6px 0 0;
    -fx-padding: 10px 16px; /* 适中的点击区域 */
    -fx-font-family: "Segoe UI", "Microsoft YaHei", sans-serif;
    -fx-font-size: 13px;
    -fx-font-weight: 500
    -fx-pref-width: 50px;
    -fx-text-fill: #64748b; /* 未选中时的文字颜色 */
    -fx-border-width: 0;
    -fx-cursor: hand;
    -fx-transition: all 0.2s ease; /* 平滑过渡效果 */
    -fx-alignment: CENTER; /* 文本居中对齐 */
}

/* 标签内文本容器 - 关键：设置文本横向显示 */
.file-type-tabs .tab .tab-label {
    -fx-rotate: 90; /* 文本不旋转，横向显示 */
    -fx-alignment: CENTER; /* 文本在标签内居中 */
    -fx-text-alignment: center; /* 文本内容居中排列 */
}

/* 选中状态的Tab样式 */
.file-type-tabs .tab:selected {
    -fx-background-color: white; /* 与表格背景匹配 */
    -fx-text-fill: #1e293b; /* 选中时文字加深 */
    -fx-font-weight: 600;
    -fx-border-width: 0;
    -fx-border-color: #e0e0e0;
    -fx-border-bottom-color: white; /* 隐藏底部边框，与内容区无缝衔接 */
    -fx-background-insets: 0;
}

/* 悬停状态的Tab样式（未选中时） */
.file-type-tabs .tab:hover:not(:selected) {
    -fx-background-color: rgba(0, 0, 0, 0.06);
    -fx-text-fill: #334155;
}

/* 禁用状态的Tab样式（如需） */
.file-type-tabs .tab:disabled {
    -fx-opacity: 0.6;
    -fx-cursor: default;
}

/* 标签页内容区域样式 */
.file-type-tabs .tab-content-area {
    -fx-background-color: white;
    -fx-padding: 0;
    -fx-border-width: 0;
    -fx-background-insets: 0;
}

/* 移除默认的下划线指示器 */
.file-type-tabs .tab-header-area .tab-indicator {
    -fx-background-color: transparent;
}

/* 标签之间的分隔线 */
.file-type-tabs .tab-header-area .tab-separator {
    -fx-background-color: rgba(224, 224, 224, 0.6);
    -fx-pref-width: 1px;
    -fx-opacity: 0.7;
}

/* 标签页滚动按钮容器 */
.file-type-tabs .control-buttons-tab {
    -fx-background-color: transparent;
    -fx-padding: 0 4px;
}

/* 滚动按钮样式 */
.file-type-tabs .control-buttons-tab .container .tab-down-button {
    -fx-background-color: transparent;
    -fx-padding: 6px;
    -fx-shape: null;
    -fx-background-radius: 4px;
    -fx-min-width: 24px;
    -fx-min-height: 24px;
}

/* 滚动按钮悬停样式 */
.file-type-tabs .control-buttons-tab .container .tab-down-button:hover {
    -fx-background-color: rgba(0, 0, 0, 0.08);
}

/* 滚动按钮箭头样式 */
.file-type-tabs .control-buttons-tab .container .tab-down-button .arrow {
    -fx-background-color: #64748b;
    -fx-pref-width: 8px;
    -fx-pref-height: 8px;
}

/* 内容区域边框调整 */
.file-type-tabs .tab-pane *.tab-content-area {
    -fx-border-width: 0;
    -fx-border-color: #e0e0e0;
    -fx-background-color: white;
    -fx-background-insets: 0;
}

/* 修复焦点指示器问题 */
.file-type-tabs .tab:selected .focus-indicator {
    -fx-focus-color: transparent;
    -fx-faint-focus-color: transparent;
    -fx-border-color: transparent;
}

/* 当标签过多时的滚动区域样式 */
.file-type-tabs .tab-header-area .tab-header-background {
    -fx-background-color: transparent;
}

/* ==============================================
   表格样式
   ============================================== */
.result-table {
    -fx-background-color: white;
    -fx-border-color: #e0e0e0;
    -fx-border-width: 0;
    -fx-table-cell-border-color: transparent;
    -fx-padding: 0;
    -fx-background-insets: 0;
}

/* 表头容器样式 */
.result-table .column-header-background {
    -fx-background-color: #f0f2f5;
    -fx-border-color: #e0e0e0;
    -fx-border-width: 0;
    -fx-padding: 0;
    -fx-background-insets: 0;
}

/* 单个表头样式 */
.result-table .column-header {
    -fx-font-weight: 600;
    -fx-text-fill: #1e293b;
    -fx-padding: 0 12px;
    -fx-height: 38px;
    -fx-alignment: CENTER_LEFT;
    -fx-border-width: 0;
    -fx-border-color: #e0e0e0;
    -fx-background-insets: 0;
    -fx-background-color: transparent;
}

.result-table .column-header:last-of-type {
    -fx-border-width: 0;
}

.result-table .column-header .label {
    -fx-alignment: CENTER_LEFT;
    -fx-padding: 0;
    -fx-font-size: 14px;
}

/* 表头交互效果 */
.result-table .column-header:hover {
    -fx-background-color: #e8eaed;
}

.result-table .column-header .arrow {
    -fx-background-color: #64748b;
    -fx-padding: 2px;
    -fx-shape: "M 0 0 L 4 4 L 8 0 Z";
}

/* 表格行与单元格样式 */
.result-table .table-row-cell {
    -fx-height: 38px;
    -fx-padding: 0;
    -fx-background-insets: 0;
}

.result-table .table-cell {
    -fx-padding: 0 12px;
    -fx-alignment: CENTER_LEFT;
    -fx-border-width: 0;
    -fx-font-size: 13px;
    -fx-text-fill: #374151;
}

/* 行交替色 */
.result-table .table-row-cell:odd {
    -fx-background-color: #f8fafc;
}

.result-table .table-row-cell:even {
    -fx-background-color: white;
}

/* 行交互效果 */
.result-table .table-row-cell:hover {
    -fx-background-color: #eef2ff;
}

.result-table .table-row-cell:selected {
    -fx-background-color: #dbeafe;
    -fx-text-fill: #1e293b;
}

/* 列特殊样式 */
.result-table .table-cell:nth-child(1) { /* 名称列 */
    -fx-font-weight: 500;
}

.result-table .table-cell:nth-child(2) { /* 路径列 */
    -fx-text-overrun: ellipsis;
    -fx-wrap-text: false;
}

.result-table .table-cell:nth-child(3) { /* 大小列 */
    -fx-alignment: CENTER_RIGHT;
}

.result-table .table-cell:nth-child(4) { /* 修改日期列 */
    -fx-alignment: CENTER;
}

/* ==============================================
   状态栏样式
   ============================================== */
.status-panel {
    -fx-background-color: #f0f2f5;
    -fx-border-color: #e0e0e0;
    -fx-border-width: 0;
    -fx-padding: 8px 15px;
}

.status-panel .status-label {
    -fx-text-fill: #64748b;
    -fx-font-size: 13px;
}

/* 进度条 */
.status-panel .progress-bar {
    -fx-pref-width: 300px; /* 强制设置宽度，确保可见 */
    -fx-height: 8px; /* 设置高度，默认可能太细 */
}

.progress-bar .track {
    -fx-background-radius: 4px;
    -fx-background-color: #e2e8f0; /* 浅灰色背景，确保与面板区分 */
    -fx-border-color: #cbd5e1; /* 边框增加对比度 */
    -fx-border-radius: 4px;
}

.progress-bar .bar {
    -fx-background-radius: 3px; /* 与轨道半径匹配 */
    -fx-background-color: #3b82f6; /* 进度条颜色 */
    -fx-padding: 0;
    -fx-background-insets: 0; /* 去除内边距，避免进度条显示不全 */
}

/* ==============================================
   右键菜单样式
   ============================================== */
.context-menu {
    -fx-background-color: white;
    -fx-border-color: #e0e0e0;
    -fx-border-radius: 8px; /* 稍微增大圆角，更现代 */
    -fx-background-radius: 8px;
    -fx-padding: 4px 0;
    -fx-effect: dropshadow(gaussian, rgba(0,0,0,0.15), 6, 0, 0, 3); /* 增强阴影，突出层级 */
    -fx-min-width: 180px; /* 固定最小宽度，避免文字换行 */
}

.menu-item {
    -fx-padding: 8px 28px; /* 增加内边距，提升点击区域 */
    -fx-font-size: 13px;
    -fx-cursor: hand;
    -fx-background-color: transparent;
    -fx-text-fill: #2d3748; /* 加深文字颜色，提升可读性 */
    -fx-background-radius: 4px; /* 增大圆角，与菜单呼应 */
    -fx-transition: all 0.15s ease;
}

/* 鼠标悬停状态 */
.menu-item:hover {
    -fx-background-color: #3b82f6; /* 稍浅的蓝色背景，避免与选中状态混淆 */
    -fx-text-fill: #1e40af; /* 深蓝色文字，保持对比度 */
    -fx-font-weight: 500;
}

/* 选中状态（键盘导航或默认选中时） */
.menu-item:selected {
    -fx-background-color: #3b82f6; /* 主色调背景 */
    -fx-text-fill: white; /* 白色文字，确保清晰可见 */
    -fx-font-weight: 500;
}

/* 分隔线样式优化 */
.separator-menu-item {
    -fx-padding: 2px 0; /* 分隔线上下留白 */
}

.separator-menu-item .line {
    -fx-background-color: #f3f4f6; /* 更浅的分隔线，减少视觉干扰 */
    -fx-padding: 0 16px;
    -fx-height: 1px; /* 确保分隔线细而清晰 */
}

/* 修复可能的焦点样式冲突 */
.menu-item:focused {
    -fx-background-color: #3b82f6;
    -fx-text-fill: -fx-selection-bar-text;
}

/* ==============================================
   对话框样式
   ============================================== */
.dialog-pane {
    -fx-background-color: white;
    -fx-border-radius: 8px;
    -fx-background-radius: 8px;
    -fx-font-size: 14px;
}

.dialog-pane .content.label {
    -fx-padding: 12px 0;
    -fx-text-fill: #374151;
}

.dialog-pane .button-bar .button {
    -fx-padding: 6px 16px;
    -fx-border-radius: 4px;
    -fx-background-radius: 4px;
    -fx-font-size: 13px;
    -fx-cursor: hand;
}

.dialog-pane .button-bar .button:default {
    -fx-background-color: #3b82f6;
    -fx-text-fill: white;
}

.dialog-pane .button-bar .button:hover {
    -fx-opacity: 0.9;
}